package com.javaweb.web.service;

import java.io.OutputStream;
import java.util.List;

import org.springframework.web.multipart.MultipartFile;

import com.javaweb.base.po.File;
import com.javaweb.base.po.User;
import com.javaweb.util.entity.Page;
import com.javaweb.web.eo.file.FileListRequest;

/**
 * 文件模块业务层接口
 * 
 * @author tank2140896
 */
public interface FileService {
	
	/**
	 * 上传文件业务层接口
	 * 
	 * @param multipartFile multipartFile
	 * @param user 用户对象
	 * @return List<String> 文件ID列表
	 */
	List<String> uploadFile(MultipartFile[] multipartFile,User user) throws Exception;
	
	/**
	 * 下载文件业务层接口
	 * 
	 * @param file 文件信息
	 * @param outputStream 输出流
	 */
	void downloadFile(File file,OutputStream outputStream) throws Exception;
	
	/**
	 * 文件列表业务层接口
	 * 
	 * @param fileListRequest 文件列表请求参数
	 * @return Page 分页参数
	 */
	Page list(FileListRequest fileListRequest);

	/**
	 * 文件删除业务层接口
	 * 
	 * @param id 文件ID
	 */
	void fileDelete(String id) throws Exception;

	//Page contentList(FileContentListRequest fileContentListRequest);
	
	//com.javaweb.web.po.File fileDetail(String id);
	
}
